// 公有js文件

// 根据id获取登录用户信息
$.ajax({
    type: 'get',
    url: `/users/${userId}`,
    success: res => {
        // 设置登录用户头像
        $('.avatar').prop('src', res.avatar);
        // 设置登录用户昵称
        $('.avatar').siblings('h3').html(res.nickName);
        $('.profile').show();
    },
    error: err => alert('获取登录用户信息失败!')
});

// 用户选择退出登录
$('#logout').on('click', function () {
    if (confirm('您确定要退出登录吗？')) {
        $.ajax({
            type: 'post',
            url: '/logout',
            success: res => {
                location.href = 'login.html';
            },
            error: err => {
                alert('退出失败！');
            }
        });
    }
});

/**
 * 图片上传函数
 * @param { 图片的选择控件id属性名称（需要以#开头）} fileID 
 * @param { 图片的预览控件id属性名称（需要以#开头）} previewId 
 * @param { 图片路径存放隐藏域id属性名称（需要以#开头）} hiddenId
 */
function imgUpload(fileID, previewId, hiddenId) {
    // 获取选择的文件
    let avatar = $(fileID).get(0).files[0];
    let formdata = new FormData();
    formdata.append('avatar', avatar);
    // 发送图片上传请求
    $.ajax({
        type: 'post',
        url: '/upload',
        data: formdata,
        contentType: false,
        processData: false,
        success: res => {
            // 头像预览
            $(previewId).prop('src', res[0].avatar);
            // 把返回的头像路径保存到用户头像隐藏域中
            $(hiddenId).val(res[0].avatar);
        }
    });
}

/**
 * 获取url参数,若url中没有要查找的参数则返回-1
 * @param {要获取的url参数名称} paramName 
 * return 获取到的参数值
 */
function getUrlParam(paramName) {
    let parmaArray = location.search.substring(1).split('&');
    for(let i=0; i<parmaArray.length; i++) {
        let temp = parmaArray[i].split('=');
        if (temp[0] == paramName) return temp[1];
    }
    return -1;
}

/**
 * 把时间转换成 2017-12-13 16:00:00  格式字符串
 * @param {要转换的时间} date 
 */
function dateFormat(date) {  
    date = new Date(date);
    var y = date.getFullYear();  
     var m = date.getMonth() + 1;  
     m = m < 10 ? ('0' + m) : m;  
     var d = date.getDate();  
     d = d < 10 ? ('0' + d) : d;  
     var h = date.getHours();  
     h = h < 10 ? ('0' + h) : h;  
     var minute = date.getMinutes();  
     minute = minute < 10 ? ('0' + minute) : minute; 
     var second= date.getSeconds();  
     second = second < 10 ? ('0' + second) : second;  
     return y + '-' + m + '-' + d+' '+h+':'+minute+':'+ second;    
};